package net.lab1024.sa.admin.module.sast.project.domain;

import lombok.Data;
import java.util.Date;

@Data
public class ProjectForm {

    /**
     * 项目显示名（用户可自定义，如Demo项目）
     */
    private String name;

    /**
     * 父项目UUID（主项目为NULL，分支/PR项目关联主项目的uuid）
     */
    private String projectUuid;

    /**
     * 项目唯一标识（projectKey，用户创建项目时定义，如com.example:demo）
     */
    private String projectkey;

    /**
     * 项目描述（可选，用户填写）
     */
    private String description;

    /**
     * 项目是否私有，TRUE（仅授权用户可见）、FALSE（公开）
     */
    private Integer isPrivate;

    /**
     * 项目可见性权限级别：1=仅管理员可见，2=仅开发人员可见，3=游客可见，4=管理员和开发人员可见，5=管理人员和游客可见，6=开发人员和游客可见，7=无权限限制
     */
    private int visibility;

    /**
     * 分支类型（仅qualifier=BRC时有效）：LONG（长期分支）、SHORT（短期分支）
     */
    private String branchType;

    /**
     * Pull Request标识（仅qualifier=PR时有效，如pr-123）
     */
    private String pullRequestKey;

    /**
     * 项目语言，例如：Java、C/C++
     */
    private String language;
}
